@inherits Umbraco.Web.Macros.PartialViewMacroPage

@*
    Macro to list all child pages under a specific page in the content tree.

    How it works:
        - Confirm the startNodeId macro parameter has been passed in with a value
        - Loop through all child pages
        - Display a list of link to those pages, sorted by the value of the propertyAlias

    Macro Parameters To Create, for this macro to work:
    Alias:startNodeId     Name:Select starting page    Type:Content Picker
*@

@{ var startNodeId = Model.MacroParameters["startNodeId"]; }
@if (startNodeId != null)
{
    @* Get the starting page *@
    var startNode = Umbraco.Content(startNodeId);
    var selection = startNode.Children.Where("Visible");

    if (selection.Any())
    {
        <ul>
            @foreach (var item in selection)
            {
                <li>
                    <a href="@item.Url">@item.Name</a>
                </li>
            }
        </ul>
    }
}